#ifndef SELECTREGION_H
#define SELECTREGION_H

#include <QObject>
#include <QImage>
#include <QRect>
#include "Ptr.hpp"

using namespace OOPUtils;

class SelectRegion : public QObject
{

  Q_OBJECT

public:

  SelectRegion ();
  SelectRegion (const QRect & rect);
  SelectRegion (const SelectRegion & right);
  ~SelectRegion ();

  
  
  QRect & getBounding ();
  const QRect & getBounding () const;
  void setBounding (const QRect & rect);



  Ptr< QImage > getMask ();
  const Ptr< QImage > getMask () const;
  void setMask (Ptr< QImage > pMask);



  Ptr< QImage > getBorderImage () const;
  Ptr< QImage > getMaskDisplayImage () const;

private:

  QRect _rect;
  Ptr< QImage > _pMask;

};

#endif // SELECTREGION_H
